Adaptive bit rate (ABR) streaming is a technique used in streaming multimedia over communication networks, for example, the Internet. Some video streaming technologies may utilize streaming protocols such as Real Time Protocol (RTP) with Real Time Streaming Protocol (RTSP). ABR streaming technologies, however, are generally based on Hyper Text Transport Protocol (HTTP) and are designed to work efficiently over large networks that support HTTP, such as the Internet. The typical ABR streaming technique may have a scheme that partitions a video stream into sequence of segments with approximately equal durations in presentation timeline.
In some applications, ABR streaming may use one or more encoders that can encode a single source video stream at multiple bit rates to generate different bit rate representations. Each of the different bit rate representations may be partitioned into small segments. ABR clients may be provided with a manifest file that includes information regarding available segments of representations at differing bit rates. The client may request the segments of different representations (e.g., with different bit rates) depending on available resources determinable by the client (e.g., effective network performance). In general, this may result in a good experience for both network connections with various levels of effective performance as well as connections whose quality may vary over time.